Key: [Opt] = Optimization [Fix] = Bug Fix [Afx] = Alpha or Beta fix. Fix for a problem recently introduced. [Imp] = Improvement on bug, but problems may still exist [New] = New Feature [Chg] = Changes Previous Functionality [Kis] = Known Issue [Wrk] = WorkAround [WrB] = WorkAround broken as a result of bug fix. [Nlr] = No Longer Reproducible, Reason Unknown. Usually a consequence of some other fix. [Tip] = Insight into the design of a feature, suggests possible uses. [Nte] = Note [Dep] = Deprecated [Pat] = Describes a backwards compatibility issue. [Ref] = Major refactoring, functionality should be identical to previous. 2006 Release 1fc4 [Afx] [IDE] Compiling: No longer causes a failed assertion when building a packaged application that already exists.(Feedback ID: fbczdprz) 2006 Release 1fc4 [Afx] [Win] Code Editor: Now allows Ctrl-Insert, Ctrl-Home, Ctrl-End, and Ctrl-Enter again for their various functions. [IDE] [IDE] IDE Scripts: Now has a menu bar so that you can save, close and do editing operations.(Feedback ID: nulgxwfj) [IDE] [IDE] IDE Scripts: Now save with the proper extension by default on Windows (instead of with .xml). Also, now filters .rbs files as appropriate.(Feedback ID: aqiomnbz) [Afx] [IDE] IDE Scripts: The DoShellCommand now functions properly on Windows. 2006 Release 1fc3 [Afx] [All] Code Editor: Widnows and Linux now allows Ctrl+Arrow Keys for navigating code. Was broken in a previous alpha.(Feedback IDs: drmbsccl, wrtulspg) [Afx] [IDE] Debugger: Now shows variables and properties whose type is an interface.(Feedback IDs: visqjnay, rlmnlidf) [Afx] [OSX] Dynamic Constants: Now work on OS X.(Feedback ID: bnhxtqom) [Afx] [IDE] Structures: No longer cause failed assertions when declaring a structure with an array inside of it whose ubound is less than 0. [Afx] [All] Threads: No longer leak like a sieve.(Feedback IDs: dmqjgjak, aqoqbhwu) 2006 Release 1fc2 [Chg] [Car] Built Application: The CFBundleDevelopmentRegion is now included in the property list. This value is based on the Language popup in the build settings dialog. If Default is used, the current language of the machine is used in this entry. If another language is chosen, that language is used.(Feedback IDs: siccbwgy, gwjzgbni) [Fix] [IDE] Code Editor: Keyboards that use the Alt+Gr combination to input certain characters now works in the code editor.(Feedback IDs: zdpefjsx, crbtxfgd) [Afx] [Win] Compiler: Methods containing variables whose type is a structure larger than 64 bytes no longer crash on entry (broken in fc1).(Feedback ID: xttneqsp) [Fix] [Win] Compiler: Structure.StringValue no longer fails to swap endianness for certain fields when big-endian values are requested from a little-endian system.(Feedback ID: oujlckib) [Afx] [All] Compiler: When a function in a module tries to return a structure, the compiler now reports an error message instead of failing assertions in the code generator.(Feedback ID: byvfaqwe) [Afx] [IDE] Debugger: No longer catched ThreadEndExceptions when you quit a threaded-application with Break on Exceptions set to true.(Feedback ID: fglinsao) [Fix] [IDE] Icon Editor: You can now add icons via a contextual menu click on the appropriate icon pane.(Feedback ID: brhilaes) [Afx] [All] Interfaces: Interfaces that define an Operator_Convert can now be converted again.(Feedback IDs: sgwvbrfv, hmwrotya) [Fix] [Lnx] ListBox: Selected rows no longer disappear when listbox is disabled.(Feedback ID: bdqmpqba) [Afx] [Mac] Listbox: Thin dotted lines are now drawn again on the Mac(Feedback IDs: guwtybqh, eesgnrgs) [Imp] [Win] PrinterSetup: No longer crashes on Windows in most cases. The sample still shows a crash after a much more extended period, but the fix is unlikely to be safe for 2006r1. A workaround on the bug has been added to prevent this problem from affecting your applications.(Feedback IDs: lwlierco, hagzejij) [Afx] [All] Shared Properties: No longer cleaned up when a class is destructed. This would result in crashes in certain circumstances.(Feedback IDs: nmnntkop, fhemkier) 2006 Release 1fc1 [All] [All] Arrays: Failed assertions in dump.cpp no longer occur after releasing a reference to an array which has been cast to an array of a superclass of the original element type. [IDE] [IDE] Autocomplete: Now autocompletes extension methods(Feedback IDs: eeouxnjv, tbphhnwu) [Fix] [All] Compiler: A syntax error no longer occurs when you attempt to look up the AddressOf a module method using its qualified name.(Feedback ID: thezshtq) [All] [All] Compiler: Getting the value of an element of an array in a structure no longer causes a crash whenever the array contains any type other than a structure. [Afx] [Win] Compiler: No longer fails assertions in CGIA32.cpp when both terms of an expression involve Int8 or Int16 values. [Afx] [IDE] Compiler: No longer stomping on IA32 registers when loading an Int64 property from the self object.(Feedback IDs: tlaspuyv, fmdkkgbx) [Afx] [Car] Dynamic Constants: If the default value is an empty string, it no longer returns the name of the constant instead of an empty string in the case that a localized value cannot be found.(Feedback IDs: kjrlcjnm, hborocos) [Fix] [IDE] Items on the command bar overflow menu (which comes up when you click the chevron at the right side of a command bar) are no longer permanently enabled, whether they apply to the current project item or not.(Feedback ID: hjttmyfx) [Afx] [All] ListBox.CellClick: Returning true from the CellClick event no longer causes the app to not terminate. This should also fix the issue where the IDE would not quit.(Feedback ID: ejgpwlts) [Afx] [All] MemoryBlock: Now sets values < 32 bits properly when needing to do byte swapping. Broke in earlier alpha when refactoring for the new data types.(Feedback IDs: tmkjixad, xmuzrkhz) [Fix] [All] XML: No longer crashing due to a nil string in various parts of the XML plugin (such as XmlReader.Base).(Feedback ID: wdwrtzje) 2006 Release 1b5 [Afx] [IDE] BevelButton: All BevelButtons in the IDE are now shows with their proper captions (instead of showing Untitled). This only affected BevelButtons in the IDE (not in your built applications).(Feedback ID: lztnqazm) [Afx] [Win] BevelButton: No longer destroying the mask of a BevelButton's icon. Note that this affects a previous bug fix for properly showing the disabled state of a BevelButton. If your icon has a mask property set, then you are required to set your own disabled look and feel. However, if your icon has no mask, then RB will grey the icon out for you when the BevelButton is disabled.(Feedback IDs: bpvneofw, qmqnyybk) [Fix] [IDE] Code Editor: No longer flickers while typing(Feedback IDs: nfhyhsbs, ntsqgklh) [Afx] [IDE] Code Editor: \"Add Note\" command is no longer permanently disabled in the code editor.(Feedback ID: bebtpzvm) [Afx] [X86] Compiler: A structure's fields are no longer scrambled when it is passed as a ByVal parameter.(Feedback ID: aqzykmqm) [IDE] [IDE] Compiler: Negation operator works for all integer types, not just Int32. [IDE] [IDE] Compiler: The compiler no longer complains when a ParamArray is specified as an array type, instead of as an element type. [Fix] [IDE] Compiler: The compiler no longer fails an assertion in datatypes.cpp when a parameter is erroneously specified as both ParamArray and ByRef.(Feedback ID: divmcinf) [Afx] [IDE] Constants listbox, structures li: Now allows you to delete the last row (not the + row to add a new field) using the keyboard.(Feedback IDs: vkxrvngv, gyiinvoz) [IDE] [IDE] Debugger: Looking at the contents of a structure in the debugger, when the structure has a string field, no longer causes the debug app to crash. [All] [All] Hex: Calls to Hex, Bin, and Oct are no longer considered ambiguous when the parameter is a Single or Double.(Feedback ID: uzhywggr) [Afx] [IDE] IDE Menus: Can now make a new Note again.(Feedback IDs: kxqjzjpn, ydmtziao) [Fix] [IDE] Project Item Editor, Menu Editor: Now supports the Alt+Enter keyboard shortcut on Windows and Linux to set focus to the properties for the currently selected item.(Feedback IDs: wwiftlsi, tksdgbvr) [Afx] [All] RbScript: No longer tries to look up the old version of the Str function, causing a failed assertion at RbScriptInterface.cpp:180.(Feedback ID: rccnfcad) [Chg] [All] REALSQL Database: Upgraded to SQLite 3.2.8. [Fix] [Win] REALSQL Database:Fixed a bug on Windows that caused new database files to have ".xml" appended to their names in certain situations. [All] [All] SSLSocket: The implementation of the SSL Socket has been reverted to be the same as REALbasic 2005r4. This new version will be reintroduced during the alpha/beta process of REALbasic 2006r2. [Afx] [IDE] Structures listbox, enums listbo: Hitting Enter to commit an edit does not automatically edit the next row.(Feedback IDs: qpbkzvwe, cipcdsut) 2006 Release 1b4 [All] [All] Compiler: No longer fails an assertion in FunctionCalls.cpp when handling an overloaded extension method.(Feedback ID: kdckxtwm) [IDE] [IDE] Strings: Str function no longer switches to scientific notation for integer values, regardless of their size. [All] [All] Variant: IsNumeric returns true for Int64, UInt64, and Single. [Afx] [All] Variants: The StringValue of an Int64 containing zero no longer has a leading negative sign.(Feedback ID: nrrnbktz) [Afx] [OSX] Spotlight: using spotlight no longer cause launch failure of a built application. 2006 Release 1b3 [IDE] [IDE] Code Editor: The \"Project > Add\" menu no longer enables all menu items which are not also present on the code editor's command bar, thereby allowing you to add things in inappropriate places (structures in classes, properties in interfaces, and so on).(Feedback ID: ltrhaitb) [Afx] [IDE] Code Editor: \"Comment\" toolbar command is no longer inappropriately enabled when editing structures and enumerations.(Feedback ID: jtubtzar) [Afx] [All] Compiler: Apps no longer sometimes crash or otherwise behave oddly after assigning values to fields of a structure contained in an object instance property.(Feedback ID: jmlpbrix) [Afx] [IDE] Compiler: No longer crashes instead of reporting a proper error when attempting to create an instance of a nonexistent class (broken in b2).(Feedback ID: zuokurla) [All] [All] Compiler: No longer reports a bogus undefined-operator error when using arithmetic on 8- or 16-bit integers. [IDE] [IDE] Debugger: Structure contents now show up in the debugger's variables pane.(Feedback ID: afqrstxp) [IDE] [IDE] Debugger: The last few digits of a value at the extreme end of an Int64's or UInt64's range are no longer garbled when using decimal format. [X86] [X86] Debugger: Viewing a 64-bit integer no longer causes the debugger to crash (broken in b2).(Feedback ID: fkxxrbzr) [All] [All] RbScript: Print and Input events no longer fire in the wrong script object when more than one script is running at a time.(Feedback ID: htzidcua) [All] [All] RbScript: Scripts that call intrinsic math & string functions no longer crash or otherwise behave in unexpected ways. (broken in R2 or R3) [All] [All] Strings: The CStr function no longer returns a blank string when its argument is an Int64 or UInt64. [Afx] [All] Variant: The Int64Value and UInt64Value methods no longer return results divided by 2^32.(Feedback ID: pyplqoke) [IDE] [IDE] Variant: The StringValue function no longer returns an empty string when the variant contains an Int64 or UInt64 value (VarType = 3). 2006 Release 1b2 [Afx] [IDE] Compiler: Ambiguous overloading errors no longer occur when you try to call an event or private method which shadows an inherited method.(Feedback ID: blqxfzts) [Afx] [IDE] Compiler: No longer fails an assertion in FunctionCalls.cpp when you erroneously invoke an instance method using its class' name instead of an object expression.(Feedback ID: nfaaesbs) [All] [All] Compiler: Not-equals operator no longer returns true, regardless of the values involved, whenever one of the operands is an Int64 or UInt64. [Afx] [IDE] Compiler: Now honors the new version information added in a2 for Win32 builds.(Feedback IDs: uwrrkvdz, abyhjper) [Afx] [IDE] Debugger: Int16 and Int8 variables no longer show up incorrectly when they contain negative numbers.(Feedback ID: fsfufdrk) [Afx] [IDE] Debugger: Int64 and UInt64 variables show up in the debugger.(Feedback ID: nacnpebe) [All] [All] Language: CLong joins CDbl and Val as a way to convert text to a number; it accepts a string in decimal, hex, octal, or binary format (using &h, &o, or &b as appropriate) and returns its value as an Int64. [All] [All] Language: Enum values must be cast explicitly to integer types; there is no longer an implicit conversion. [Chg] [All] REALSQL Database: The WHERE clause that gets created for a RecordSet.Update statement now only contains rowid (instead of all of the values that were in the initial SELECT statement that created the RecordSet). [Kis] [All] REALSQL Database: There is a bug in SQLite that prevents queries with aggregate functions from failing when there is no GROUP BY clause. Consequently, you can create a RecordSet from a query that includes an aggregate function and you will not get an error. Due to the change to the WHERE clause for RecordSet.Update, this can result in unpredictable behavior if you attempt to edit one of these illegal RecordSets. Do not edit RecordSets that have been created from queries that contain aggregate functions. In the future, the REAL SQL Database may be able to detect this problem. [Chg] [All] SSL Socket: Previously mentioned SSL Socket fixes should now be included. [All] [All] Variant: New accessors Int32Value, UInt32Value, Int64Value, UInt64Value, and SingleValue let you explicitly convert a variant to their respective datatypes. 2006 Release 1b1: [Dep] [All] BinaryStream: Deprecated the ReadLong, ReadShort, ReadByte, WriteLong, WriteShort and WriteByte methods in favor of the new data-type specific methods.(Feedback ID: kwsmgwqw) [New] [All] BinaryStream: Now supports all the new data types in the form of ReadXXX and WriteXXX (where XXX is the new data type). ie) ReadInt8 and WriteUInt64, etc. [Fix] [IDE] Code Editor: variables declared as part of a "for each" statement now autocomplete properly.(Feedback IDs: tnqxxfep, xevunuks) [Afx] [All] Compiler: Apps that assign hex values to variants no longer fail on startup (with an assertion or an OS loader error).(Feedback ID: coedmbie) [Afx] [All] Compiler: Constant folding works for unsigned and 64-bit integer expressions.(Feedback ID: aikrduig) [All] [All] Compiler: Enum constants no longer lose their types when the same value is used elsewhere in the program.(Feedback ID: ocrziyao) [IDE] [IDE] Compiler: No longer fails to report an error when an object reference is supplied as an argument for a parameter which expects an array of the object's superclass.(Feedback ID: srtteili) [Fix] [IDE] Compiler: No longer reports spurious ambiguous overloading errors when calling a method overloaded at different levels of its class hierarchy.(Feedback IDs: jeytxjpn, drlfnyhw) [X86] [X86] Compiler: Once again generates working code for single-to-double and double-to-single floating-point conversions. [IDE] [IDE] Compiler: Sort and SortWith do not make the erroneous claim that arrays of Int8, UInt8, Int16, UInt16, UInt32, Int64, and UInt64 cannot be sorted. [IDE] [IDE] Compiler: The overloading algorithm no longer reports spurious ambiguous-overloading errors in some situations where more than two methods would satisfy a given call. [IDE] [IDE] Compiler: You can overload the array methods with Extends methods.(Feedback ID: jcacuirr) [Fix] [IDE] Constants: No longer generate an internal error when you enter an invalid constant value (e.g., "&40" for a numeric constant).(Feedback ID: dyrgkygo) [Fix] [Win] Date: Doing date math on Windows now gives proper results when setting negative values for any of the fields (except years, which must always be absolute).(Feedback ID: bbebqsxi) [IDE] [IDE] Language: It is now possible to typecast from an enum type to a simple integer type, or from one integer type to another, as long as both types are the same size. [New] [All] MemoryBlock: Now supports the new integer data types. [Fix] [IDE] Remote Debugging: The IDE now uses the preferences pane to determine which IP address the IDE is on when remote debugging. [New] [IDE] Search Results: Copying the search results now includes the data from the "Match" column, which shows where the match occurred in text form, with the matched part indicated in square brackets.(Feedback IDs: frpzbnyk, mkijbdwv) [New] [IDE] Search Results: The "Match" column is now sortable.(Feedback IDs: vldkzbol, ujbqfoug) [Afx] [IDE] Structures: Structure editor no longer gets confused by declare types.(Feedback ID: eeucoepw) [All] [All] Structures: Structure fields are no longer padded to the natural alignment for their type; this lets you create matching declarations for structures which were not originally defined using natural alignment. [Afx] [IDE] Structures: The compiler reports an error when a structure tries to contain an instance of itself (a field with the containing structure's type), and the editor no longer chokes.(Feedback ID: gczmytuo) 2005 Release 5a4: [Fix] [IDE] Autocomplete: Now autocompletes mouse cursors. [Afx] [IDE] Code Editor: Now lets you edit code in editors which are opened on the first launch of the IDE.(Feedback ID: oouncnil) [Fix] [X86] Compiler: Fixed a strange problem in the IA32 backend which would generate incorrect code for comparisons and certain arithmetic operations.(Feedback ID: upsnafuv) [Fix] [All] Compiler: REALbasic no longer crashes when compiling a program containing a method with an optional ByRef parameter; instead it properly reports an error.(Feedback ID: ghmedwye) [Afx] [IDE] Declaration Pane: Now has proper keyboard mnemonics for the new Dynamic checkbox in the constants editor.(Feedback IDs: yzxjtyvy, cihflfdk) [Afx] [IDE] Declaration Pane: Properties are no longer described as "Functions" in the declaration pane.(Feedback ID: zaalgify) [Afx] [IDE] Declaration Pane: The Type buttons for constants are no longer disabled incorrectly.(Feedback IDs: aqgiirgv, zimhwjvh) [Fix] [IDE] File Types Editor: Now has resizeable columns in its ListBox.(Feedback IDs: uyijjidk, vbxwutkl, ymaqufzr) [Chg] [IDE] Find dialog: Now always gives the focus to the \"Find\" field when it appears, even if it was last left with the focus in the \"Replace With\" field.(Feedback ID: urfrrriv) [Chg] [OSX] Graphics.DrawPicture: Now interpolates much better when drawing with Quartz (i.e., when graphics.UseOldRenderer = False).(Feedback IDs: zvimwdpv, otqbhdwb) [New] [IDE] IDE Scripting: Now supports several new methods; see the IDE Scripting Read Me for details. [Kis] [IDE] IDE Scripting: The new \"RunScript\" command (within IDE scripts) may crash the IDE. We hope to get that fixed soon. [New] [IDE] IDE Scripting: There is now an \"IDE Scripts\" submenu under the File menu. This contains the \"New IDE Script\" command, but also lists any script files (ending in \".rbs\") found in a \"Scripts\" folder next to the IDE, or next to the current project. Selecting one of these items executes the script; or if you hold down a modifier key, then it opens it in the script editor. [New] [All] Language: REALbasic offers enumerated constant types. You can add an enumeration to a module using Project > Add or by customizing the module toolbar to include the \"Add Enumeration\" command. The enumeration's name is a new datatype, and its contents are new constants within the enumeration's namespace. Constant values start at zero, and each constant is one greater than the previous item, unless you specify a value manually by entering \"name = value\" instead of simply \"name\". (Feedback ID: ojgskvye) [New] [All] Language: The \"Size\" and \"StringValue\" items documented in \"Read Me - Structures\" do not work yet; they will be implemented in a future alpha. [New] [All] Language: You can now create structure datatypes in REALbasic; open a module and go to Project > Add > Structure. See \"Read Me - Structures\" for more complete information.(Feedback ID: rnqwssir) [Fix] [IDE] Project Item Editor: Now updates the state of the encrypted badge when decrypting an item.(Feedback ID: bsefhkwv) [Chg] [IDE] Properties List: The \"Source\" property of an RBScript instance now has an ellipsis button, allowing you to enter more than one line of source within the window editor.(Feedback ID: kylwympl) [New] [IDE] rbidescript: This new open-source command-line tool allows you to automate the IDE from the command line shell (or, by using the communications module in your own code, from your own REALbasic app). See the ReadMe file included with the download for more information.(Feedback ID: firrwxjm) [All] [All] Shared Methods and Properties: Calling a method on an instance now doesn't cause a compiler error. [All] [All] Shared Properties: Shared Properties with default values, or that are an array, are now initialized properly. [Afx] [All] SSL Socket: Now no longer causes build errors.(Feedback ID: ygzxisyv) 2005 Release 5a3: [Fix] [Win] ActiveX: Setting the Left/Top/Width/Height of an ActiveX control, that already contains such properties itself (like the WebBrowser ActiveX control), now work properly.(Feedback ID: ujuclotx) [All] [All] Compiler: Compiler once again generates correct PowerPC code for single-to-double and double-to-single floating-point conversions.(Feedback ID: yutzqqzv) [Fix] [All] ConsoleApplication: Now has SleepCurrentThread, just like the Application class has. [Fix] [Lnx] Controls: REALSetControlFocus now works properly for custom widgets.(Feedback ID: olkmrulw) [OSX] [OSX] FolderItem: The Visible property now returns values based on Launch Services when available. This means Visible will return false for files that begin with a \\".\\", and other files the system thinks should not be visible. [All] [All] Language: Added \"RaiseEvent\" which can be used to call an event. This is particularly useful if you have a method and an event with the same name. Example: RaiseEvent SomeEvent return RaiseEvent SomeEvent2(parameters) [Afx] [All] ListBox: DragExit event now fires when a drag leaves the listbox(Feedback IDs: aqdyirzj, fnucstkl) [Fix] [Lnx] RectControl.KeyDown: The key parameter in the KeyDown event now reports keypad numbers correctly.(Feedback ID: dlesgcbk) [Fix] [Win] RectControl.KeyDown: "Dead" keystrokes are now translated properly.(Feedback ID: nlocjtuj) [All] [All] RuntimeException: A new property \\"Stack() as String\\" contains a list of all of the methods in the stack from the main entrypoint to the point at which \\"raise\\" was invoked. The first element (0) contains the current function works up the call stack from there. This feature only works if the \\"Include Function Names\\" feature is enabled.(Feedback ID: qqwjvafy) [Fix] [All] REALSQLDatabase: Fixed a bug with opening databases on Windows when there were non-ASCII characters in the path leading to the database file (or in the database file's name itself). [Chg] [All] REALSQLDatabase now inserts '0' for 'false' and '1' for 'true' when using the BooleanColumn methods of DatabaseRecords and RecordSets. 2005 Release 5a2: [Fix] [IDE] AppleScripts: Now import properly (as scripts rather than raw data) even if they don't end in a ".scpt" extension.(Feedback ID: mqxxlkgx) [Fix] [All] Arrays: SortWith now works properly with arrays that are "upcasted" from one element type to another.(Feedback ID: dlaywauh) [Fix] [IDE] Autocomplete: Now autocompletes more reliably, especially in the context of a Window.(Feedback ID: kserjzdg) [Afx] [IDE] Autocomplete: Now autocompletes the new integer data types. As an extra added bonus, now autocompletes Nil as well. [New] [All] BinaryStream, TextInputStream, T: Has a new getter property: Handle( type as Integer ) as Integer where the type can be any of the new HandleType* constants on the class. This property will return a handle of the property type, or -1 if the handle type cannot be retrieved.(Feedback ID: ydtprjxj) [New] [All] BinaryStream, TextInputStream, T: Now has a Constructor: Constructor( handle as Integer, type as Integer ), where type is one of the HandleType* constants on the class, and handle is the appropriate handle type specified by the type parameter. So, for instance, you can use a declare to open a file up with whatever permissions you\'d like, and then pass the Handle to a stream object\'s constructor.(Feedback ID: eyllgykv) [New] [All] BinaryStream, TextInputStream, T: Now has a set of constants for use with the Constructor and Handle property. The constants are as follows: HandleTypeWin32Handle = 1 // A Win32 OS HANDLE HandleTypeFilePointer = 2 // A FILE * HandleTypeFileNumber = 3 // A file descriptor HandleTypeMacFileRefNum = 4 // A file reference number HandleTypeMacFileSpecPointer = 5 // An FSSpec *(Feedback ID: kdcpfhzl) [Fix] [Lin] Clipboard: Getting/setting pictures on the clipboard now works across processes (requires GTK+ 2.6 or better).(Feedback ID: llcpxlwl) [Fix] [IDE] Code Editor: Clear all breakpoints works properly again.(Feedback ID: aqrcdsbi) [Fix] [IDE] Code Editor: Now correctly matches multiple "catch" sections within a "try" block.(Feedback IDs: chkkgiti, ekoqliqh) [Fix] [Win] ComboBox: Now gets the Text properly when you are querying from the KeyDown event of an autocompleting ComboBox.(Feedback ID: tblimgbi) [New] [Win] Compiler: Added three new fields to the version information stored on Windows. InternalName (which is used if your application has an internal vs external name -- and when left blank, will simply be the same of the application minus the .exe), CompanyName and ProductName (which means you can have an executable name like winword.exe and a product name of Microsoft Word).(Feedback ID: suabelyx) [Afx] [All] Compiler: Code generators no longer inappropriately reuse cached 32-bit intermediate values for 8- and 16-bit integers.(Feedback ID: aqwjpron) [New] [All] Compiler: New Int64 and UInt64 datatypes offer support for 64-bit integer arithmetic. (Feedback ID: iatmsfre) [Fix] [All] Compiler: No longer fails to verify that an object whose Operator_Compare method is about to be called is not nil when the object came from a ByRef parameter or a simple property of another object, referenced through the dot operator.(Feedback ID: ndwcmcct) [Afx] [Car] Compiler: No longer throws a failed assertion when a class that implements an interface is placed on a window.(Feedback ID: anksbxlr) [Afx] [All] Compiler: Now honors default values of properties again. [Fix] [Win] Compiler: Now properly sets the \"Description\" field in the version resources on Windows. Previously only set one Description field (on the main tab) and not the one on the version tab.(Feedback ID: visdkmwe) [Afx] [IDE] Compiler: Now reports proper errors when accessing an instance member from inside of a shared method or computed property.(Feedback IDs: fhlkqarb, xwxjecec) [New] [All] Compiler: Now supports a new pragma that allows you to determine which calling convention a method will be compiled with on x86. This allows you to write callback functions on Windows, which typically require the StdCall calling convention. You use it like this: #pragma X86CallingConvention StdCall | CDecl(Feedback ID: mahawzux) [All] [All] Compiler: Numeric literals outside the range of a 32-bit integer used to be represented as 64-bit floats; they now become 64-bit integers instead. [Afx] [All] Compiler: 8- and 16-bit integer values are no longer mangled when being passed as parameters or converted to floating-point values.(Feedback ID: xgtkkbqf) [Fix] [Lin] Controls: Setting the control focus in Window.Open now works properly(Feedback ID: umomedtw) [Fix] [Win] Debugger: No longer allows the destructors for static objects to be called when Killing the application. This would manifest itself by throwing failed assertions when you have running threads. [Afx] [IDE] Debugger: No longer crashes when viewing integer types that are not 0.(Feedback ID: bcvwazsm) [Afx] [Win] EditField: Now checks the scrollbars property in the correct fashion when determining whether to draw the EditField in a theme-savvy manner or not.(Feedback IDs: nugigdpi, zdzunoqq) [Fix] [All] EmailMessage: Fixed a problem where some emails that had a mime boundary in the header could have cause a stack overflow exception when just the headers where retrieved.(Feedback IDs: zcmslvmq, tlrnnuam) [New] [All] Graphics: Added a new method to get the OS handle from a Graphics object: Handle( type as Integer ) as Integer The type parameter is defined by one of the new Graphics.HandleType constants. This method will return 0 if the handle type is not supported or available.(Feedback IDs: asoojmdw, mwdsfmtk) [New] [All] Graphics: Added four new constants to be used when getting the handle from a Graphics object. HandleTypeHDC = 1, gets the HDC on Windows. HandleTypeCGrafPtr = 2, gets the QuickDraw CGrafPtr on Mac. HandleTypeGdkDrawablePtr = 3, gets the GdkDrawable * on Linux. HandleTypeGdkGCPtr = 4, gets the GdkGC * on Linux.(Feedback IDs: zkzduyzc, yrroacmm) [Fix] [Lin] Graphics: Now supports drawing lines with different pen sizes(Feedback ID: bexqdcsj) [New] [IDE] IDE Scripting: The REALbasic IDE is now scriptable and recordable on all platforms, using RBScript. See the \"IDE Scripting Read Me\" document for details.(Feedback ID: fcekdtxn) [New] [All] If either operand of an integer arithmetic expression is a 64 -bit value, the result will be a 64-bit value. If both operands are 32 bits or smaller, the result will be a 32-bit value. If either operand of an arithmetic expression is signed, the result will be signed; the result will only be unsigned if both operands are unsigned. [Fix] [Mac] Listbox: Cells that are checkboxes no longer draw past the end of the listbox on the Mac.(Feedback ID: dllgiqwk) [Win] [Win] Listbox: Now draws horizontal thin dotted lines properly(Feedback ID: qwujmfrq) [Fix] [Lin] Listbox: Now draws the hierarchical widget in its correct color, instead of the color last set in the CellBackgroundPaint event(Feedback ID: wmmwgjta) [Fix] [Win] MouseCursor Editor: No longer displays the hotspot in the wrong location.(Feedback ID: alaaqqyo) [Fix] [Win] MouseCursor: Cursors dragged into the project now have their hotspot set correcly on Windows, instead of having the x and y axis flipped.(Feedback ID: pzeoyyqx) [Fix] [IDE] Project Item Editor: No longer prematurely bails out when dragging in a Win32 cursor file where the first entry in the file isn\'t a 16x16 cursor.(Feedback ID: pshhjent) [Afx] [IDE] Project Saving: Now saves properties default values properly again.(Feedback IDs: hshrsice, qtjaktdt) [Fix] [IDE] ProjectItem Editor: No longer allows folders to have a blank name.(Feedback IDs: blykkujm, vmjrelrx) [Fix] [Lin] PushButton: Typing Enter/Return in an single-line Editfield, or typing Enter in a multi-line Editfield, now triggers the default PushButton (consistent with other platforms).(Feedback ID: vdxfnjgs) [Fix] [All] RegExMatch: SubExpressionCount is now available in console applications.(Feedback ID: linrbegp) [Fix] [Lin] Shell: IsRunning property is now set properly(Feedback ID: xcxkxoqf) [Fix] [All] Shell: ShellNotAvailableException and ShellNotRunningException are both available in console applications.(Feedback ID: obxjjozh) [Afx] [All] SSLSocket: The read me has been updated with new information.(Feedback IDs: kyfapgsh, gdogrruh) [Fix] [All] StringShape: Now scales even when the TextSize has been set to 0.(Feedback IDs: filoyegl, htodzemt, yfumxqmk) [New] [All] Threads: Added a Thread.Kill method. Internally, this method will cause your thread's stack to unwind, destructors for local objects to be called, etc. It's a graceful exit which can cause code to execute. It may also cause context switches.(Feedback IDs: wohifzzk, tkxqxnvk) [Fix] [All] Threads: No longer causes an infinite loop when you sleep a thread while all other threads are suspended.(Feedback IDs: ixzjrddj, biycfmqv) [Fix] [All] Threads: Now cleanup gracefully when the application is quit. This means that object destructors will be called as appropriate, even if you call Quit before terminating the thread.(Feedback ID: apcljuji) [Fix] [All] Variant.Hash: Now returns a unique value for objects and integers; previously, different objects (or integers) might hash to the same value.(Feedback IDs: loiuhvya, wzayvzpa) [Fix] [IDE] Window Editor: Changing the font style of a control no longer changes the font style of the control order badge(Feedback ID: vbxnbjgs) [Fix] [IDE] Window Editor: Using constants for button heights no longer causes odd selection position in the IDE(Feedback IDs: suyorybf, lxighdkk, begoynxd, frzekqtn) [Mac] [Mac] Window: Now respects the MinimizeButton property on the Mac. [Fix] [Win] Window: Now selects the proper default pushbutton when initially opened inside of an MDI application.(Feedback IDs: axrifidu, khvchlms) [Fix] [IDE] XML Files: Now properly save the state of the menu shortcut flags instead of saving them all under the AltModifier flag.(Feedback IDs: nwyfmhui, jcisnaoo) 2005 Release 5a1: [New] [Mac] Apple Events: Intrinsic apple events, such as 'odoc', 'quit', 'pref', etc are now all passed to the Application.HandleAppleEvent event first. If you return true, the default behavior will no longer take place (for example, if you return true from HandleAppleEvent for the 'odoc' event, the OpenDocument event will not fire). [Fix] [All] Application Launch: No longer throw assertions when a class which implements an interface which defines no methods is instansiated. [New] [All] Array.Sort: No longer generates a StackOverflowException on very large, almost-sorted arrays. Note that such worst-case data can still cause Array.Sort to take a very long time to finish, however.(Feedback IDs: dyknvqvu, wmubxzhk) [Fix] [Win] BevelButton: Now draw their icons as disabled when appropriate.(Feedback ID: kbgbvtpm) [Fix] [All] BevelButton: The List getter and setter now throws OutOfBoundsExceptions when the row parameter is out of bounds.(Feedback ID: snjtdydj) [New] [IDE] Bookmarks Bar: You can now add a method or property to the bookmarks bar via drag-and-drop (drag the item name from the code browser up to the bookmarks bar). [Fix] [IDE] Bookmarks: Opening a project via the Bookmarks menu no longer opens an additional, unwanted window.(Feedback ID: wpujphyb) [Fix] [IDE] Building: Compiling for Linux on the Mac, no longer messes up the version information (incorrect byte order). [New] [All] Classes: Can now have Shared Methods and Shared Properties. Shared Methods and Properties live in the class namespace in the same way that Constants do. "Self" is not available in shared methods or shared computed properties, and you can not access instance methods or properties from within a shared method, unless doing so via an instance (such as foo.SomeProperty).(Feedback ID: gwxczsbs) [Fix] [Win] Clipboard: Pictures from the clipboard now have a valid Graphics object, mask, etc.(Feedback ID: kpoelibs) [Fix] [IDE] Code Editor: Changing the declaration of an Event Definition now updates any implementations of that event in subclasses.(Feedback ID: kzmcikqw) [Fix] [IDE] Code Editor: Constants can now be copied and pasted; they can also be deleted via menus rather than the Delete key. [Fix] [IDE] Code Editor: Horizontal scrollbar no longer stops short when a method contains a long line, among enough other lines to cause the vertical scrollbar to appear. [Afx] [Win] Code Editor: Now supports Insert Mode in the code editor -- so when you hit the Insert key, it goes into the standard type-over mode.(Feedback ID: dmxcbvyl) [Afx] [IDE] Code Editor: Now visually matches parenthesis in the code editor.(Feedback ID: jmappqre) [New] [IDE] Code Editor: Parameters field now autocompletes "As" and known datatypes. [Afx] [IDE] Code Editor: The internal parser for doing syntax highlighting now handles multi-character tokens (<>, <=, >=) better.(Feedback ID: ptfzwpau) [New] [IDE] Code Editor: You can now insert colors via a color picker using the Insert Color contextual menu.(Feedback ID: mdzfsueb) [New] [IDE] Code Editor: "super-return" block closers (obtained by pressing shift-Return or Enter) now match the case style (uppercase, title case, or lowercase) of the block opener. [Fix] [Win] ComboBox: Autocompleting ComboBoxes now get their GotFocus event fired properly. [Fix] [All] Compiler: Protected properties are no longer accessible in classes that derive from the same parent class unless the parent class declares it.(Feedback ID: wlzmgbza) [Fix] [All] Compiler: Return type covariance now works if the superclass' return type is "Object", and the subclass' type is any type of object, including an interface. [Opt] [All] Compiler: Subsequent runs of an application take slightly less time to run. This change makes compiling with many plugins closer to the speed that it would take without any plugins. [Fix] [All] Compiler: When a class inherits from two other classes, and both parent classes have the same interface in the Interfaces list, there is no longer a failed assertion.(Feedback ID: niwpomaf) [New] [All] Compiler: #if statements can now be one-line statements. The "Then" statement is required. E.g. #if TargetCarbon then MsgBox "I'm on Carbon!"(Feedback ID: vkfahabz) [Fix] [All] Computed Properties: Now allows an exception and finally block. It always allowed try/catch blocks, but an exception block for the body of the accessor previously caused a compiler error.(Feedback IDs: kwgucytz, gjwdlshi) [Fix] [IDE] Database editor: Database column attributes are no longer lost when sorting the columns(Feedback ID: zuerlkdf) [Afx] [IDE] Debugger: No longer throws an OutOfBoundsException when viewing a nil Variant.(Feedback IDs: zglowbji, ycvjpjyn) [Fix] [IDE] Debugger: The picture viewer's contents pane now displays images properly on Windows and Linux. Was also slightly optimized. [New] [All] DecodeQuotedPrintable: Now decodes input where hex values are represented in lowercase. (Despite the requirement in RFC 1521 that the hex codes always be uppercase, it is common to find them in lowercase in such things as email messages, and DecodeQuotedPrintable can now decode these anyway.) [All] [All] Drag & Drop: Add new drag events for all RectControls and Window DragEnter( obj As DragItem ) As Boolean - This event is triggered when the drag enters the control or window. Returning true in this function will prevent drop from occurring. DragExit( obj As DragItem ) - This event is triggered when the drag leaves the control or window. DragOver( x As Integer, y As Integer, obj As DragItem ) As Boolean - This event is triggered when the drag is over the control or window. x,y are mouse coordinates relative to the control. Returning true prevents drop from occurring. [Fix] [Win] Drag & Drop: Dragging a picture from an RB app to another app now works, and vice versa. [Fix] [Win] Drag & Drop: Dragging a picture from your RB app to another app now works, and vice versa.(Feedback IDs: qyqpkpjy, xhmdsapg) [New] [Mac] Drag & Drop: Now supports promised files. To enable this advanced feature, call AcceptRawDataDrop with "phfs" as the data type. Then, when a drag from an application that sends file promises is dropped on your app, you will find a FolderItem in the drag item (usually, this will point to something in the TemporaryItems folder, and you should delete this file when you're done with it). [Chg] [Win] EditField: Are now drawn theme-savvy under the following cirumstances: The border property is set to true. Multiline is set to false. Multiline is set to true, but the Scrollbar* properties are set to false. [Fix] [Mac] EditField: No longer generates an assertion failure if you assign a text whose encoding is not one supported by the OS, and whose length is an odd number of bytes. [Fix] [Win] EditField: Now honors LimitText when assigning text directly (instead of via user input).(Feedback ID: ipeqsidx) [Fix] [Mac] EditField.AppendText: Now properly remains scrolled to the bottom even when the font is set to SmallSystem. [Fix] [Mac] EditField.CharPosAtXY: Now returns a correct result when given a pixel position beyond the right end of the line, on the last line of text. [Fix] [Mac] EditField.CharPosAtXY: Now returns correct results for pixel positions just below the baseline in a small font such as SmallSystem. [New] [IDE] Find & Replace: Now supports RegEx replacement. In your Replace With string, use \1 to indicate the first subexpression (in parentheses in your search string), \2 for the second, etc. Also use \0 to indicate the whole matched text, and \ for a plain backslash.(Feedback ID: kokocent) [Fix] [Lnx] Floating Windows: Now float above other document windows [Afx] [Win] FolderItem Dialogs: Now defaults to the My Documents directory if you do not specify an initial directory property.(Feedback ID: eltatmej) [Chg] [Mac] FolderItem.AbsolutePath: Now returns a full Unicode path, roughly equivalent to what you would get by walking the \\"Parent\\" list and concatenating the Name properties together. [Fix] [Win] GameInputDevice: Now supports hat switches and other POV elements.(Feedback ID: blkvdlbx) [New] [All] Language: Integer variables are now available in a range of sizes, using both signed and unsigned forms. New type names are Int8, Int16, Int32, UInt8, UInt16, and UInt32, plus Byte (as an alias for UInt8). Integer is now defined as an alias for a signed integer of the target architecture\'s word size, which on all current targets equals Int32. [Chg] [All] Language: Negative step values now cause a For loop to iterate backwards, instead of aborting instantly. This is more consistent with the way other dialects of Basic work. (The DownTo option is still supported, since it can improve readability, but now it simply reverses the sign of the step value.)(Feedback ID: uxilkzbk) [New] [IDE] Location field: Now accepts \\"App\\" as a reference to your blessed Application subclass, even if that is not literally named \\"App.\\" [Afx] [Lnx] Movie: No longer throws a failed assertion when attempting to get a movie from a resource on Linux. Now the movie returned is nil. [New] [IDE] Printing: Source code printouts now use emphasis for headers, and prefix method names with the class or window name.(Feedback ID: ulsrusey) [Fix] [Lnx] Printing: Starting a new page now clears the page properly [Afx] [IDE] Project Item Editor: No longer allowed to name items in the project item editor which start with an _. Now displaying an error when you try to do so.(Feedback IDs: oyuctoeu, jxjlrujq) [Afx] [IDE] ProjectItem Editor: Can no longer falsely encrypt items in the project item editor.(Feedback ID: kshqvykd) [New] [IDE] Project: You can now drop WMV/ASF movie files into your project and play them using the MoviePlayer (Windows only).(Feedback ID: lywpnpsq) [Fix] [Win] PushButton: Now honors the default property when the button is opened on a modal dialog and the button is not the first control in the control order.(Feedback ID: dwgtvfhx) [Fix] [Win] PushButton, CheckBox, RadioButto: Now get the focus properly when using a keyboard mnemonic to trigger their action event. [Fix] [Lnx] Screen: AvailableLeft, AvailableTop, AvailableWidth, and AvailableHeight, now properly accounts for the task bar. [Fix] [Win] Screen: AvailableTop, AvailableLeft, AvailableWidth and AvailableHeight now work properly when querying the non-primary monitor. [Afx] [IDE] Search Results: No longer displays highlighted text as black on Windows when selecting multiple search results.(Feedback ID: xyziqdkl) [New] [All] SSLSocket: The SSL Socket has been rewritten. Please see Read Me for further details. [Opt] [All] Trim, LTrim, and RTrim: Now operate more efficiently when given a string whose encoding is defined as ASCII, or with undefined encoding. [Fix] [IDE] Window Editor: Checking keyboard mnemonics will now always report a positive result, instead of only reporting in certain circumstances.(Feedback ID: aktxdece) [Fix] [IDE] Window Menu: Windows beyond the 9th one no longer get keyboard shortcuts.(Feedback ID: brgjhukn) [Fix] [Win] Window: A moveable modal dialog now has its system menu items properly reflecting the state of the buttons on the caption bar.(Feedback ID: imkxvcgb) [Fix] [Win] Window: Now honors the CloseButton property when MinimizeButton is set to true.(Feedback ID: zzpiyxcb) [Fix] [Win] Window: Now picks the proper default PushButton, even when the button is on a tab panel. As an extra-added bonus fix, it also picks the proper default button when a button\'s visibility has changed and when a CheckBox or RadioButton has focus.(Feedback ID: sqnwqbdh) [Chg] [IDE] XML Export: Now uses Unix line endings on OS X, to be consistent with most other XML files, and compatible with command-line tools such as diff and svn.